; 
assume cs:codesg,ds:datasg,ss:stacksg

stacksg segment
    dw 0,0,0,0,0,0,0,0
stacksg ends

datasg segment
    ; nbame R+0H
    db 'Visual Studio   '
    ; address R+10H
    db 'cn bj   '
    ; age R+18H
    dw 20
    ; number R+19H
    dw 00h
datasg ends

codesg segment
start:  mov ax,datasg
        mov ds,ax
        ; 结构体基地址
        mov bx,0
        ; 修改age
        mov word ptr [bx].18h,33
        mov word ptr [bx+18h],34
        ; 修改number
        mov word ptr [bx].19h,44
        mov word ptr [bx+19h],45
        ; 修改name
        mov si,0
        mov byte ptr [bx+si],'K'
        inc si
        mov byte ptr [bx][si],'L'
        ; 修改addr
        mov di,10H
        mov byte ptr [bx+di+0h],'u'
        mov byte ptr [bx][di].1h],'s'

        mov ax,4c00h
        int 21h
codesg

end start
